package br.edu.fafica.pi1.arkhanhorror.dao.array;

import br.edu.fafica.pi1.arkhanhorror.dao.InterfaceDAOFactory;
import br.edu.fafica.pi1.arkhanhorror.dao.InterfaceDAOJogador;
import br.edu.fafica.pi1.arkhanhorror.dao.InterfaceDAOLocalidade;
import br.edu.fafica.pi1.arkhanhorror.dao.InterfaceDAOMythos;
import br.edu.fafica.pi1.arkhanhorror.dao.InterfaceDAOPersonagem;

public class DAOFactoryArray implements InterfaceDAOFactory {

	private InterfaceDAOJogador daoJogador;
	private InterfaceDAOPersonagem daoPersonagem;
	private InterfaceDAOMythos daoMythos;
	private InterfaceDAOLocalidade daoLocalidade;
	
	@Override
	public InterfaceDAOJogador getDAOJogador() {
		if (this.daoJogador == null) 
			this.daoJogador = new DAOJogadorArray();
		return this.daoJogador;
	}
	
	@Override
	public InterfaceDAOPersonagem getDAOPersonagem() {
		if (this.daoPersonagem == null)
			this.daoPersonagem = new DAOPersonagemArray();
		return this.daoPersonagem;
	}

	@Override
	public InterfaceDAOMythos getDAOMythos() {
		if (this.daoMythos == null)
			this.daoMythos = new DAOMythosArray();
		return this.daoMythos;
	}

	@Override
	public InterfaceDAOLocalidade getDAOLocalidade() {
		if (this.daoLocalidade == null)
			this.daoLocalidade = new DAOLocalidadeArray();
		return this.daoLocalidade;
	}
}